home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
M-More Monthly Disks
/
(c)m1.d64
/
mash.c
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-04
|
8KB
|
238 lines
50 REM ********************************
55 REM * *
60 REM * M A S H *
65 REM * *
70 REM ********************************
75 :
80 :REM BY PAUL ROYLE (OCT 83)
85 :REM -----------------------
90 :REM " [207][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][208] "
95 :REM " [165]JOYSTICK VERSION[167] "
100 REM " [204][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][186] "
105 :
110 P$="M*A*S*H"
115 PRINT"[147]";
120 FORI=1TO36
125 PRINT"[166]";
130 NEXTI
135 FORI=1TO19
140 PRINT"[157][166]";
145 NEXT
150 FORI=1TO35
155 PRINT"[157][157][166]";
160 NEXTI
165 FORI=1TO19
170 PRINT"[157][145][166]";
175 NEXTI
180 PRINT"PAUL ROYLE"
185 PRINT"PRESENTS":FORT=1TO100 :NEXTT
190 FOR I=1TOINT((40-(2*LEN(P$)))/2)
195 PRINT"";
200 NEXTI
205 FORI=1TOLEN(P$)
210 FORT=1TO100:NEXTT
215 PRINTMID$(P$,I,1);" ";
220 NEXTI:PRINT""
225 FOR I=1TOINT((40-(2*LEN(P$)))/2)
230 PRINT"";
235 NEXTI
240 PRINT"[157][183]";: FORI=1TOLEN(P$)
245 FORT=1TO100:NEXTT
250 PRINT"[183][183]";
255 NEXTI:PRINT""
260 PRINT" HIT SPACE TO START [146]"
265 GETA$:IFA$<>" "THEN265
270 :
275 BASE=1064 :LT= 1
280 POKE 53280,6 :REM CHANGE BORDER
285 PRINT"[147]";TAB(16);"M ";:FORT=1TO250:NEXTT
290 PRINT"A ";:FORT=1TO250:NEXTT
295 PRINT"S ";:FORT=1TO250:NEXTT
300 PRINT"H ";:FORT=1TO250:NEXTT
305 PRINT"[147] JOYSTICK M A S H[146] JOYSTICK"
310 PRINT" BY: PAUL ROYLE"
315 GETA$:IFA$<>""THEN315
320 IF HIGH<>0THEN PRINT" HIGH SCORE[146]:";HIGH;" BY ";HIGH$
325 PRINT" IN THIS GAME YOU ARE A MASH CHOPPER"
330 PRINT" PILOT. YOU MUST PICK UP CASUALTIES AT"
335 PRINT"PICK UP POINTS MARKED 0 THRU 9, AND";
340 PRINT" TAKETHEM TO THE 4077TH ([219]). DELIVER AS MANY"
345 PRINT" AS POSSIBLE IN 60 MINS OF FUEL. BUT"
350 PRINT" 1 SECOND REAL TIME IS EQUIVALENT TO "
355 PRINT" 1 MIN GAME TIME SO YOU ONLY HAVE 60"
360 PRINT" REAL SECONDS."
365 PRINT" YOU CAN ONLY LAND ON A ROAD, CLEARING"
370 PRINT" CHOPPER PAD, OR PICK UP POINT.
375 [153]" TRY TO LAND BEFORE RUNNING OUT OF FUEL"
380 [153]" FOR BEST SCORE. IF YOU DON'T YOU WILL"
385 [153]" CRASH!! YOU CAN ALSO CRASH BY ";
390 [153]"LANDING IN THE WRONG PLACE."
395 [153]"NOTEWAIT: DON'T FORGET TO TAKE OFF AT START"
400 [153]" HIT ANY KEY TO CONTINUE WAIT"
405 [161]A$:[139]A$[178]""[167]405
410 [161]A$:[139]A$[179][177]""[167]410
415 [153]"LOAD THE CONTROLS ARE ON JOYSTICK 2"
420 [153]" TAKE OFF (null) LAND N"
425 [153]" (FIRE BUTTON) (null)"
430 [153]" WTAN(null)TANE"
435 [153]" (null)"
440 [153]" S"
445 [153]" (null) REPRESENTS THE 4077TH"
450 [153]" * REPRESENTS A MINE FEILD"
455 [153]" SPC( REPRESENTS TREES"
460 [153]" (null)TAN(null) REPRESENTS ROADS"
465 [153]" REPRESENTS A CLEARING"
470 [153]" EWAIT REPRESENTS ENEMY TERRITORY"
475 [153]" @ REPRESENTS WATER"
480 [153]" 0-9 REPRESENTS PICK UP POINTS"
485 [153]" (null)WAIT REPRESENTS YOUR CHOPPER"
490 [153]"";[163]15);"GOOD LUCK!WAIT"
495 [153][163]13);"HIT SWAIT TO START"
500 [161]A$:[139]A$[179][177]"S"[167]500
505 :
510 BASE[178]1064
515 [151] 53280,6 :[143] CHANGE BORDER
530 :
535 [153]"LOAD FUEL: WAIT M*A*S*HWAIT MNS OF FUEL"
540 [153]"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEWAIT";
545 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
550 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
555 [153]"TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANRIGHT$SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
560 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
565 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(MID$TANRIGHT$SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
570 [153]"EWAITSPC( SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
575 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)TANRIGHT$SPC(EWAIT";
580 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(*****SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(MID$=(null)SPC(EWAIT";
585 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(* *SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
590 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC( SPC(* (null) *TANTANTANTAN<SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
595 [153]"EWAITSPC(SPC(SPC(SPC(SPC(@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(* *SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
600 [153]"EWAITSPC(SPC(SPC(SPC(@@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(*****SPC(SPC(SPC(SPC((null)SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
605 [153]"EWAITSPC(SPC(SPC(@@@@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(SPC(MID$TANTANTANTANTANTANTANTANTANTAN<SPC(SPC(EWAIT";
610 [153]"EWAITSPC(SPC(@@@@@@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
615 [153]"EWAITSPC(SPC(@@@@@@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
620 [153]"EWAITSPC(SPC(SPC(@@@@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC((null)SPC(SPC(EWAIT";
625 [153]"EWAITSPC(SPC(SPC(SPC(@@@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(MID$TANTANTAN";
630 [153]"EWAITSPC(SPC(SPC(SPC(SPC(@SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
635 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(EWAIT";
640 [153]"EWAITSPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC( SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(SPC(EWAIT";
645 [153]"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEWAIT";
650 SC[178]0:ST$[178]"L"
655 [153]"STATUS: AT 4077TH"
660 PC[178]91
665 P[178]BASE[170]418
670 [129]I[178]1[164]10
675 TM[178][197]([200](([196]([171]TI)),1))
680 UP[178][181]([187](TM)[172]880)[170]1
685 [139][194](BASE[170]UP)[179][177]102[167]680
690 [151]BASE[170]UP,I[170]47
695 [130]I
700 TI$[178]"000000":T1[178]0:T2[178]0:T3[178]0:T4[178]0:T5[178]0
705 [139]TI[177]600 [175]T1[178]0[167][153]"THEN":T1[178]1
710 [139]TI[177]1200[175]T2[178]0[167][153]"THENTHEN":T2[178]1
715 [139]TI[177]1800[175]T3[178]0[167][153]"THENTHENTHEN":T3[178]1
720 [139]TI[177]2400[175]T4[178]0[167][153]"THENTHENTHENTHEN":T4[178]1
725 [139]TI[177]3000[175]T5[178]0[167][153]"THENTHENTHENTHENTHEN":T5[178]1
730 [139]TI[177]3600[175]ST$[178]"A"[167]890
735 [139]TI[177]3600[167]995
740 [139]TI[177]3300[167][141]790
745 [141]1060:[139]JV[179][177]1[175]JV[179][177]4[175]JV[179][177]8[175]JV[179][177]2[167][141]815
750 [153]"";[181](60[171](TI[173]60));"CMD "
755 [139]FR[178]0 [167] 1065
760 [139]ST$[179][177]"A"[167]705
765 [139]JV[178]1 [167]PN[178]P[171]40:PQ[178][194](PN):[137]825
770 [139]JV[178]4 [167]PN[178]P[171]1 :PQ[178][194](PN):[137]825
775 [139]JV[178]8 [167]PN[178]P[170]1 :PQ[178][194](PN):[137]825
780 [139]JV[178]2 [167]PN[178]P[170]40:PQ[178][194](PN):[137]825
785 [137]705
790 [129]I[178]1[164]2
795 [153]" LOW ON FUEL!WAIT":[129]T[178]1[164]2 :[130]T
800 [153]" LOW ON FUEL!":[130]I:[142]
805 [153]"";
810 [153]"STATUS: AIR BORN ":ST$[178]"A":[129]I[178]1[164]100:[130] :[137]705
815 [139]CB[178]0[167][151]P,219:[129]T[178]1[164]15:[130]T:CB[178]1:[142]
820 [151]P,214:[129]T[178]1[164]15:[130]T:CB[178]0:[142]
825 [139]PN[179]BASE[167]975
830 [139]PN[177]BASE[170]880[167]975
835 [139]PQ[178]133[167]975
840 [151]PN,214:[151]P,PC:P[178]PN:PC[178]PQ:[137]705
845 [139]PC[177]47 [175]PC[179]58 [167]870
850 [139]PC[178]102 [176] PC[178]0 [176] PC[178]42[167]890
855 [139]PC[178]91[167]945
860 [139]TI[177]3600[175]ST$[178]"A"[167]890
865 [153]"STATUS:LANDED ":ST$[178]"L":[137]705
870 [139]C[177]0[167]985
875 [153]"STATUS:AT PICK UP POINT":ST$[178]"L"
880 C[178][181](2[172][187](1))[170]1:[153]"PICKED UP";C;"CASUALTIES RETURN TO 4077TH"
885 PC[178]32:[137]705
890 [129]X[178]1[164]15:[161]A$
895 [153]" CRASH! WAITON";:[129]T[178]1[164]20:[130]T
900 [153]" CRASH! ON";:[129]T[178]1[164]10:[130]T:[130]X
905 [153]" YOU'RE DEAD SUCKER!!"
910 [153]"YOU REALLY BLEW IT"
915 [153]"THAT CUTS DOWN YOUR SCORE TO";[181]((1[170]SC)[173]2)
920 [153]" HIT SPACE OR WAIT TO START AGAIN" :T[178]0:C[178]0:SC[178]0:ST$[178]"L"
925 T[178]T[170]1
930 [161]A$:[139]A$[179][177]""[167]285
935 [139]T[179]500[167]925
940 [137]285
945 [153]"STATUS:LANDED AT 4077 ":ST$[178]"L"
950 [153]" ON"
955 [139]C[178]0[167][137]705
960 SC[178]SC[170](10[172]C)
965 [153]"SCORE=";SC;""
970 C[178]0:[137]705
975 [153]" YOU FLEW INTO ENEMY TERRITORY !"
980 [153]" YOU'RE SHOT DOWN IDIOT!":[137]890
985 [153]" ON"
990 [153]"FULL LOAD!! RETURN TO 4077TH":ST$[178]"L":[137]705
995 [153]"LOAD TIMES UP CONGRATULATIONSWAIT YOU LANDED "
1000 [153]" BEFORE RUNNING OUT OF GAS !!!!!"
1005 [153]" THAT GIVES YOU A 100 POINT BONUS"
1010 SC[178]SC[170]100
1015 [153]" YOUR SCORE IS";SC;"WAIT!!"
1020 [139]SC[179]130[167][153]"BETTER LUCK NEXT TIME WIMP:":[137]1040
1025 [139]SC[179]160[167][153]"THAT'S NOT TO GOOD BUT TRY AGAIN":[137]1040
1030 [139]SC[179]190[167][153]"NOT BAD!! BUT YOU COULD DO BETTER!":[137]1040
1035 [153]"GOOD SCORE ACE !!!!!!!!!!!!!!!!!!"
1040 [151]198,0:[139] SC[179]HIGH [167] [137]920
1045 [153]"CONGRATULATIONS THATS HIGH SCOREWAIT!!"
1050 [133]"PLEASE ENTER YOUR NAME";HIGH$
1055 HIGH$[178][200](HIGH$,10):HIGH[178]SC:[137]920
1060 JV[178][194](56320):FR[178]JV[175]16:JV[178]15[171](JV[175]15):[142]
1065 [139]LT[178][171]1[167]LT[178]1:[137]845
1070 LT[178][171]1:[137]805
1075 [143] *****************************
1080 [143]
1085 [143] THE END
1090 [143]
1095 [143] *****************************
1100 :
1105 [143] ****************************
1110 [143] EXPLANATION OF VARIABLES
1115 [143] ****************************
1120 :
1125 [143] C IS THE NUMBER OF CASUALTIES
1130 [143] SC IS THE SCORE
1135 [143] P IS THE CURRENT POSITION
1140 [143] PN IS THE NEXT POSITION
1145 [143] PC IS THE CHARACTER UNDER THE CHOPPER
1150 [143] PQ IS THE CHARACTER THAT THE CHOPPER WILL MOVE OVER
1155 [143] ST$ IS THE STATUS (A AIRBORN L LANDED)
1160 [143] BASE IS THE FIRST POSITION ON THE SECOND LINE OF THE SCREEN
1165 CB IS THE CHOPER BLADE [185]ITI[145] (1 [176] 0)
1175 [143] LT (-1=TAKEOFF,1=LAND)
1180 [143] JV=NUMBER FROM JOYSTICK
1185 [143] FR IS FIRE BUTTON STATUS
1190 [143] HIGH$=HIGH SCORER
1195 [143] HIGH= HIGH SCORE
1196 :
1197 :
1200 [143] BY PAUL ROYLE
1205 [143] 71 AMORO DRIVE
1210 [143] REXDALE ONT.
1211 [143] M9W 4S3 CANADA
1212 [143]
1213 [143] IF YOU ENJOYED THIS GAME
1214 [143] PLEASE DROP ME A POSTCARD
1215 [143] ------------------------------------------------------------------